package net.maku.vo;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fhs.core.trans.vo.TransPojo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import net.maku.framework.common.utils.DateUtils;

import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
* 订单
*
* @author 小陈 
* @since 1.0.0 2025-03-17
*/
@Data
@Schema(description = "订单")
public class MainOrderExcelVO implements Serializable, TransPojo {

	/**
	 * 订单编号
	 */
	@ExcelProperty("订单编号")
	private String orderNumber;

	/**
	 * 发货地（国家）
	 */
	@ExcelProperty("发货地(国家)")
	private String sendCountry;

	/**
	 * 发货地(州)
	 */
	@ExcelProperty("发货地(州)")
	private String sendProvince;

	/**
	 * 发货地(城市)
	 */
	@ExcelIgnore
	private String sendCity;

	/**
	 * 目的地(城市)
	 */
	@ExcelIgnore
	private String goalCountry;

	/**
	 * 目的地(州)
	 */
	@ExcelIgnore
	private String goalProvince;

	/**
	 * 目的地(城市)
	 */
	@ExcelIgnore
	private String goalCity;

	/**
	 * 开始时间（发货时间查询）
	 */
	@ExcelProperty("起始时间")
	private Date startTime;
	/**
	 * 结束时间（发货时间查询）
	 */
	@ExcelProperty("截止时间")
	private Date endTime;
	/**
	 * 类型
	 */
	@ExcelIgnore
	private Integer catalog;

	/**
	 * 单号状态 0-运输途中 1-收到信息 2-成功签收 3-可能异常
	 */
	@ExcelIgnore
	private Integer orderStatus;

	/**
	 * 上传时间
	 */
	@JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN)
	private Date createTime;

	/**
	 * 购买时间
	 */
	@JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN)
	private Date updateTime;


	/**
	 * 收货时间
	 */
	@JsonFormat(pattern = DateUtils.DATE_PATTERN)
	private Date receiveTime;


}